#pragma once
#ifndef Game_Common_IEntityRender_h
#define Game_Common_IEntityRender_h

namespace Game {
namespace Common {

class DrawableEntity;
class EntityRenderManager;
class RTTI;

using namespace std;

class IEntityRender {
public:
    virtual ~IEntityRender() = 0 {};
    virtual const RTTI& GetEntityRTTI() const = 0;
    virtual EntityRenderManager* GetEntityRenderManager() const = 0;
    virtual void SetEntityRenderManager(EntityRenderManager* val) = 0;
    virtual void Draw(DrawableEntity* drawableEntity, const float& elapsedTime) = 0;
};

}
}

#endif